The present disclosure relates generally to a device and method for computing image features over discrete image regions, and more particularly for computing image features over regions having an arbitrary non-simply connected rectangular shape.
Integral image and integral histogram computations (sometimes referred to herein as “integral computations”) can be used to compute image statistics, such as mean, co-variance and histogram for a set of pixels in a simple rectangular image region.
An exemplary integral image computation is an aggregate function where, starting from an origin point in a set of image data and traversing the through the remaining points along a scan-line, the image values are summed so that each point has a cumulative value that represents the sum of the previously scanned adjacent points and the current point being scanned. An integral image representation can be created which is a representation of the cumulative image data for all the data points in the image.
The integral image representation T of an image I can be illustrated with reference to FIG. 7. In this Figure, T(x, y) is the sum over the rectangular region between the origin (1, 1) and (x,y) of the values of I, and can be computed with the following equation:
                              T          ⁡                      (                          x              ,              y                        )                          =                              ∑                          u              =              1                        x                    ⁢                                          ⁢                                    ∑                              v                =                1                            y                        ⁢                                                  ⁢                          I              ⁡                              (                                  u                  ,                  v                                )                                                                        (        1        )            
The integral image representation can be used to efficiently calculate the sum of I, over rectangle D shown in FIG. 7. The sum of I over D can be computed as Sum(D)=T(1)+T(4)−T(2)−T(3), where T(1), T(2), T(3) and T(4) refer to the integral image data at corner points 1, 2, 3 and 4, respectively. Thus, integral image representations can be useful because the sum of pixel intensities or other image values can be computed over any rectangular region of the image by referring to only the four corner points of the integral image representation.
The use of image integral representations for face detection is described in P. Viola and M. J. Jones, “Robust Real-Time Face Detection,” IJCV, vol. 57, pages 137-154 (2004), the disclosure of which is incorporated herein by reference in its entirety.
An integral histogram computation can be calculated similarly, where the integral histogram is iterated at the current data point using the histograms of the previously scanned adjacent data points. At each point, the value of the bin that the point fits into is increased in the bin's range. After the integral histogram representation of the image is computed, histograms of rectangular target regions can be computed by using the integral histogram values at the corner points of the rectangular target region. The integral histogram of the target regions is calculated similarly to the image integral representation discussed above.
The use of integral histogram computations is described in F. Porikli, “Integral Histogram: a Fast Way to Extract Histograms in Cartesian Spaces,” CVPR, vol. 1, pp. 829-836 (Jun. 20-25, 2005), the disclosure of which is incorporated herein by reference in its entirety.